package com.huizu.api.mapper;

import java.util.List;
import java.util.Map;

import com.huizu.api.domain.Commentary;
import com.huizu.api.domain.Coupon;
import com.huizu.api.domain.GoodType;

/**
 *
 * @date 2021-09-14
 */
public interface ShopApiMapper {

	// 轮播图
	public List<String> getRelation(Map<String, Object> map);

	// 商品类型
	public List<GoodType> getgoodType(Map<String, Object> map);

	// 推荐门店
	public List<Map<String, Object>> getShopList();

	public Map<String, Object> getShopDetail(Map<String, Object> map);

	// 门店商品
	public List<Map<String, Object>> getGoodsByShopId(Map<String, Object> map);

	public Map<String, Object> getGoodsDetail(Map<String, Object> map);

	public List<Commentary> getStoreGoodsCommentary(Map<String, Object> map);

	public List<String> getStoreGoodsCommentaryDetail(Commentary cm);

	public List<String> getGoodsImage(Map<String, Object> map);

	// 搜索逻辑
	public List<Long> getCateList(Map<String, Object> map);
	
	public int updateGoodsCateNum(Long cateId);
	
	public int insertMemberSearchLogs(Map<String, Object> map);
	
	public List<String>getMemberCateLogs(Map<String, Object> map);
	public List<String>getMemberCatePut(Map<String, Object> map);
	public List<String>getCateFrist();

	// 商品规格列表
	public List<Map<String, Object>> getSpec(Map<String, Object> map);

	public int getSpecId(Map<String, Object> map);

	public float getSpecPrice(Map<String, Object> map);

	// 购物车操作
	public int insertCart(Map<String, Object> map);

	public String getCartCountByGoodsId(Map<String, Object> map);

	public int updateCart(Map<String, Object> map);

	public List<Map<String, Object>> getCartShop(Map<String, Object> map);

	public List<Map<String, Object>> getCartGoods(Map<String, Object> map);

	public int removeCart(Map<String, Object> map);
	
	public int updateCartNum(Map<String, Object> map);

	/**
	 * 地址信息操作
	 */

	public int insertAddress(Map<String, Object> map);

	public List<Map<String, Object>> getAddressList(Map<String, Object> map);

	public Map<String, Object> getAddress(Map<String, Object> map);

	public int deleteAddress(Map<String, Object> map);

	public int updateDefaultFlag(Map<String, Object> map);

	// 订单操作
	public List<Map<String, Object>> getShopIdByCartId(Map<String, Object> map);

	public List<Map<String, Object>> getCartGoodsByCartId(Map<String, Object> map);

	public int insertOrderDetail(Map<String, Object> map);

	public int insertOrder(Map<String, Object> map);
	
	public Coupon getOrderCoupon(Map<String, Object> map);
	
	public int updateOrderCoupon(Map<String, Object> map);

	public int updateOrderStatus(Map<String, Object> map);

	public List<Map<String, Object>> getOrderList(Map<String, Object> map);

	public List<Map<String, Object>> getOrderGoods(Map<String, Object> map);

	public int updateOrderStatusSubOrder(Map<String, Object> map);

	public int updateOrderStatusBySub(Map<String, Object> map);

	public int deleteOrder(Map<String, Object> map);

	public int deleteOrderDetail(Map<String, Object> map);

	public Map<String, Object> getOrderPrice(Map<String, Object> map);
	
	//未领取优惠卷列表
	public List<Coupon>getShopCoupon(Map<String, Object> map);
	
	//领取优惠卷
	public int insertMemberCoupon(Coupon coupon);
	
	//优惠卷列表
	public List<Coupon>getMemberCouponNum(Map<String, Object> map);
	
	//会员商品收藏
	public int getCollect(Map<String, Object> map);
	
	public int insertCollect(Map<String, Object> map);
	
	public int deleteCollect(Map<String, Object> map);
	
	//会员商品浏览记录
    public  int insertBrowsing(Map<String, Object> map);
    
    public int getBrowsing(Map<String, Object> map);

}
